A weak HOAS approach to the POPLmark Challenge
نویسندگان
چکیده
Capitalizing on previous encodings and formal developments about nominal calculi and type systems, we propose a weak Higher-Order Abstract Syntax formalization of the type language of pure System F<: within Coq, a proof assistant based on the Calculus of Inductive Constructions. Our encoding allows us to accomplish the proof of the transitivity property of algorithmic subtyping, which is in fact the first of the three tasks stated by the POPLmark Challenge, a set of problems that capture the most critical issues in formalizing programming language metatheory.
منابع مشابه
Relating System F and λ2: A Case Study in Coq, Abella and Beluga
We give three formalisations of a proof of the equivalence of the usual, two-sorted presentation of System F and its single-sorted pure type system (PTS) variant λ2. This is established by reducing the typability problem of F to λ2 and vice versa. A key challenge is the treatment of variable binding and contextual information. The formalisations all share the same high level proof structure usi...
متن کاملA Solution to the PoplMark Challenge in Isabelle/HOL
We present a solution to the PoplMark challenge designed by Aydemir et al., which has as a goal the formalization of the metatheory of System F<:. The formalization is carried out in the theorem prover Isabelle/HOL using an encoding based on de Bruijn indices. We start with a relatively simple formalization covering only the basic features of System F<:, and explain how it can be extended to al...
متن کاملMechanized metatheory revisited (abstract)
Over a decade ago, the POPLmark challenge [2] suggested that the theorem proving community had tools that were close to being usable by programming language researchers to formally prove properties of their designs and implementations. The authors of the POPLmark challenge looked at existing practices and systems and urged the developers of proof assistants to make improvements to existing syst...
متن کاملPOPLMark Reloaded
As a follow-up to the POPLMark Challenge, we propose a new benchmark for machine-checked metatheory of programming languages: establishing strong normalization of a simply-typed lambda-calculus with a proof by Kripke-style logical relations. We believe that this case-study overcomes some of the limitations of the original challenge and highlights, among others, the need of native support for co...
متن کاملAutosubst: Reasoning with de Bruijn Terms and Parallel Substitutions
Reasoning about syntax with binders plays an essential role in the formalization of the metatheory of programming languages. While the intricacies of binders can be ignored in paper proofs, formalizations involving binders tend to be heavyweight. We present a discipline for syntax with binders based on de Bruijn terms and parallel substitutions, with a decision procedure covering all assumption...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2012